cmake_minimum_required(VERSION 3.1.0)

project(EasyCodeReaderLive_MindVision_Console VERSION 1.0.0 LANGUAGES CXX)

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

if(CMAKE_VERSION VERSION_LESS "3.7.0")
  set(CMAKE_INCLUDE_CURRENT_DIR ON)
endif()

if(CMAKE_CXX_COMPILER_IS_GNUCXX)
  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpermissive")
endif()

# include libraries

set(THREADS_PREFER_PTHREAD_FLAG ON)
find_package(Threads REQUIRED)
link_libraries(Threads::Threads)

set (OPEN_EVISION_CPP_INCLUDE_WIN "C:/Program Files/Euresys/Open eVision 26.02/Include")
set (OPEN_EVISION_CPP_INCLUDE_LINUX "/opt/euresys/Open_eVision_26_02/include")

include_directories(${OPEN_EVISION_CPP_INCLUDE_LINUX})
link_libraries(dl)

# define executable

add_executable(EasyCodeReaderLive_MindVision_Console
    EasyCodeReaderLiveMain.cpp
    ProcessingHandler.cpp
    ProcessingHandler.h
    CameraHandler.cpp
    CameraHandler.h
    CameraApi.h
    CameraDefine.h
    CameraStatus.h
)
target_link_libraries(EasyCodeReaderLive_MindVision_Console PUBLIC MVSDK)
